home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gekkan Dennou Club 147
/
Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z
/
Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin
/
games
/
hitton
/
htn_src.lzh
/
HTN_SRC
/
HTN_DEF.H
next >
Wrap
Text File
|
2000-07-03
|
4KB
|
112 lines
/* 『ひっとん』ver.1.00 ヘッダファイル (HTN_DEF.H) 2000 TAU Software */
# include <stdio.h>
# include <stdlib.h>
# include <doslib.h>
# include <iocslib.h>
/****** 構造体 ******/
typedef struct { /* ランキング用レコード */
char name[5];
int score;
short block;
char level;
} RECS;
/****** 各種マクロ ******/
# define RECS_HEAD "HTN_RECS" /* 記録ファイルヘッダ */
# define D_TIME(tm) ((ONTIME()-(tm)+8640000)%8640000) /* 時間差を求める */
# define RND0() (((double)rand())/((double)(RAND_MAX+1))) /* rnd() */
# define VPAGE2(vp) B_BPOKE((unsigned char *)0xE82601,(vp)) /* 拡張vpage */
# define VC_SP(dt) B_BPOKE((unsigned char *)0xE82600,(dt))
/* ビデオ・コントローラ:特殊モードの設定 */
# define VC_PR(dt) B_BPOKE((unsigned char *)0xE82500,(dt))
/* ビデオ・コントローラ:プライオリティ */
# define SPALET0(no,pb,cl) B_WPOKE((unsigned short *)(0xE82200+(pb)*0x20+(no)*2),(cl));
# define SCROLL2(pg,x,y) ({ SCROLL((pg*2),x,y); SCROLL((pg*2+1),x,y); }) /* 拡張SCROLL */
# define VDISP0() { while(!(B_BPEEK((unsigned char *)0xE88001) & 0x10)); \
while((B_BPEEK((unsigned char *)0xE88001) & 0x10)); }
/* 各テキスト・グラフィックデータの先頭アドレス */
/* テキストデータ */
# define LTRS(no,pn) (GRAP(0)+3190*(pn)+58*(no)) /* 文字(平仮名) */
# define NUMS(no,pn) (GRAP(0)+340*(pn)+34*(no)+6380) /* 数字 */
# define NSUB(no) (GRAP(0)+17*(no)+7060) /* 数字(重なり) */
# define WAIT(no) (GRAP(0)+3588*(no)+7230) /* 「ちょっとまってね」 */
/* グラフィックデータ */
# define HTN_LOG0 (GRAP(0)+ 7230) /* 『ひっとん』(タイトル用)「ひ」*/
# define HTN_LOG1 (GRAP(0)+10740) /* 『ひっとん』(タイトル用)「っ」*/
# define HTN_LOG2 (GRAP(0)+13860) /* 『ひっとん』(タイトル用)「と」*/
# define HTN_LOG3 (GRAP(0)+16720) /* 『ひっとん』(タイトル用)「ん」*/
# define TAU_LOG (GRAP(0)+20035) /* 「2000 TAU Software」ロゴ */
# define SEL_PNL(no) (GRAP(0)+3584*(no)+23892) /* メニュー (タイトル画面) */
# define LVL_PNL(no) (GRAP(0)+1536*(no)+7230) /* 「レベル」 (ゲーム画面)*/
# define NXT_PNL(no) (GRAP(0)+1968*(no)+7230) /* 「ネクスト」(ゲーム画面)*/
# define SCR_PNL(no) (GRAP(0)+1536*(no)+7230) /* 「スコア」 (ゲーム画面)*/
# define BLK_PNL(no) (GRAP(0)+1968*(no)+7230) /* 「ブロック」(ゲーム画面)*/
# define RANK_LOG (GRAP(0)+7230) /* 「ランキング」(ランキング画面)*/
# define NAME_PNL (GRAP(0)+7230) /* 「なまえ」 (ランキング画面)*/
/****** プロトタイプ宣言 ******/
unsigned char *GRAP(unsigned char *); /* GRAPHIC_DATA 格納領域先頭 ADDRESS */
char *FILES_NAME(int,char *); /* 各ファイル名のポインタ */
RECS *RECS_DATA(int,RECS *); /* ランキング用レコード */
int CNF_STAT(int,int); /* 環境状態 */
int WRITE_REC(void); /* レコードのディスク書き込み */
/* HTN_TITL.C */
void PLAY_MUS(int); /* PLAY MUSIC */
int PAUSE(void); /* PAUSE */
int MAIN_TITLE(void); /* MAIN_TITLE */
int TITLE0(void); /* タイトル部の MAIN_PROGRAM */
int RANKING0(int); /* ランキング画面 */
/* HTN_INPT.C */
int JOY0(int); /* JOY & KEYBORD STATUS <for INPUT> */
int JOYINP0(int); /* JOY & KEYBORD INPUT */
int JOYINP1(int); /* JOY & KEYBORD INPUT (for INPUT NAME) */
int INP_NAME(int,int); /* INPUT NAME SUB */
/* HTN_GRAP.C */
int GRM_GP(int,int,int,int,unsigned char *,int); /* <GRAPHIC> GET&PUT */
int FILL0(int,int,int,int,int); /* <GRAPHIC> FILL */
void TXFILL0(int,int,int,int,int,unsigned short); /* <TEXT> FILL */
void PRINT_MES(int,int,char *,int); /* <TEXT> PRINT MESSAGE */
void PRINT_TXNUM(int,int,int,int,int,int); /* <TEXT> PRINT NUMBER */
void PRINT_SPNUM(int,int,int,int,int,int,int); /* <SPRITE> PRINT NUMBER */
void SP_REGST0(int,int,int,int); /* <SPRITE> SET SPRITE */
void SET_SP_BLOCK(int,int,int,int,int); /* <SPRITE> SET BLOCK */
void SET_BG_BLOCK(int,int,int,int); /* <BG> SET BLOCK */